// 对axios进行二次封装
import axios from "axios";
//s实例化axios
var service = axios.create({
    // REACT_APP_BASE_URL配置环境变量和生产变量
    baseURL:process.env.REACT_APP_BASE_URL,//设置基准路径
    timeout:10*1000  //设置超时时间
})

// 设置请求拦截器
service.interceptors.request.use((config)=>{
//设置请求头
config.headers['Authorization']=localStorage.getItem('token');
return config;
},(error)=>{
  return Promise.reject(error)
})

//设置响应拦截器
service.interceptors.response.use((res)=>{
  return res;
},(error)=>{
//    处理错误状态码
  if(error.response.status == 401){
     alert('登录过期，请重新登陆')
  }else if(error.response.status==404){
    alert('请求路径有误')
  }else if(error.response.status==500){
    alert('服务器内部错误')
  }
  return Promise.reject(error)

})

export default service;